package com.foton.lotterydomain.activity.service.partake;

import com.foton.lotterycommon.common.Result;
import com.foton.lotterydomain.activity.model.req.PartakeReq;
import com.foton.lotterydomain.activity.model.res.PartakeRes;
import com.foton.lotterydomain.activity.model.vo.DrawOrderVO;

/**
 * @Author RenPu
 * @Date 2023/12/1 17:07
 * @Version 1.0
 * @Description: 参与抽奖接口层
 **/
public interface IActivityPartake {

    /**
     * 用户-领取活动功能接口的编写（参与活动）
     */
    PartakeRes doPartake(PartakeReq req);


    /**
     * 保存奖品单
     * @param drawOrder 奖品单
     * @return          保存结果
     */
    Result recordDrawOrder(DrawOrderVO drawOrder);


    /**
     * 根据用户ID orderId,更改MQ消息状态值
     * @param uId
     * @param orderId
     * @param mqState
     */
    void updateInvoiceMqState(String uId, Long orderId, Integer mqState);

}
